前面用TiUP安裝時,也已經將Grafana監控的部分一併安裝完成。
在監控這部分大致上分為幾個分類,除了主要的服務如PD,KV,TIDB,Node_exporter,Overview之外,其他額外安裝的工具或者服務,如前面測試過的binlog,lightning,binlog,cdc,或者額外安裝的TiFlash,Kafka等等也都包括在裡頭。
官網對於監控的各個dashboard都有提供說明,詳情可以到官網查閱。
在查找監控相關資訊的時候,看到有關介紹怎麼跟PD取得tso的一個範例。
前面在看TiDB的時候,有稍微看過一個request怎麼經由TiDB作處理。有一個專門的TSO thread會一直監聽channel,如果channel中有TSO需求就會向PD要求TSO然後分配下去。
當TIDB發出一個TSO需求放到channel時,會取得一個tsFuture,然後TiDB就繼續去處理之後的工作了,TSO thread從channel拿到request後,就會透過RPC通知PD我要一個TSO,取得後再送回去。
而TiDB會用一開始拿到的tsFuture取得對應的TSO。向PD發送一個RPC花費的時間稱為PD TSO RPC Duration。
當TiDB處理完自己的流程,會用之前拿到的tsFuture呼叫tsFuture.Wait()去要TSO,而這時候如果TSO還沒有返回,這段等待的時間就稱為PD TSO Wait Durtaion。
而這部分的監控資訊可以在TiDB的PD Client中查到相關資訊。
另外TiDB提供了一個針對grafana上的dashboard做snapshot的工具。
https://metricstool.pingcap.com/#restore-with-curl
接著再上傳從grafana上擷取的snaphost json檔案。
https://metricstool.pingcap.com/viz/index.html#!/